]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
calendar: Don't allow event messages to be closed
authorFlorian Müllner <fmuellner@gnome.org>
Mon, 17 Dec 2018 17:36:03 +0000 (18:36 +0100)
committerFlorian Müllner <florian.muellner@gmail.com>
Tue, 22 Jan 2019 21:35:52 +0000 (21:35 +0000)
The built-in calendar isn't meant to replace a full-fledged calendar
app, which is why clearing event messages only hides the event in
gnome-shell rather than deleting the actual event. This has turned out
to not be overly useful and often confusing - it creates a discrepancy
with visible events in apps, isn't revertible in a non-obscure fashion
and non-obviously limited to the current date.

As we are considering moving events out of the message list and back to
the calendar, it looks like a good time to remove that ability and keep
notifications as the only removable messages.

https://gitlab.gnome.org/GNOME/gnome-shell/issues/262

js/ui/calendar.js
js/ui/messageList.js

index dfe1bb9482573c9ba4dab1abdb89fee2b289d178..7ff98dfcf7e922b91b85838388547364d91096d1 100644 (file)
@@ -754,10 +754,6 @@ var EventMessage = new Lang.Class({
                 title = title + ELLIPSIS_CHAR;
         }
         return title;
-    },
-
-    canClose() {
-        return isToday(this._date);
     }
 });
 
@@ -820,6 +816,10 @@ var NotificationMessage = new Lang.Class({
         if (this._destroyId)
             this.notification.disconnect(this._destroyId);
         this._destroyId = 0;
+    },
+
+    canClose() {
+        return true;
     }
 });
 
@@ -850,10 +850,6 @@ var EventsSection = new Lang.Class({
         this._appInstalledChanged();
     },
 
-    _ignoreEvent(event) {
-        this._eventSource.ignoreEvent(event);
-    },
-
     setEventSource(eventSource) {
         this._eventSource = eventSource;
         this._eventSource.connect('changed', this._reloadEvents.bind(this));
@@ -906,9 +902,6 @@ var EventsSection = new Lang.Class({
             let message = this._messageById.get(event.id);
             if (!message) {
                 message = new EventMessage(event, this._date);
-                message.connect('close', () => {
-                    this._ignoreEvent(event);
-                });
                 this._messageById.set(event.id, message);
                 this.addMessage(message, false);
             } else {
index 547135a1ffcb2fe3047a802e8e7df07bd699402e..32b8e18b8e79bb27e006b6a401e82f7b843373be 100644 (file)
@@ -498,7 +498,7 @@ var Message = new Lang.Class({
     },
 
     canClose() {
-        return this._mediaControls.get_n_children() == 0;
+        return false;
     },
 
     _sync() {